/*
 ============================================================================
 Name		: InputDataViewContainer.h
 Author	  : Vanderson Rodrigues
 Version	 : 1.0
 Copyright   : Your copyright notice
 Description : CInputDataViewContainer declaration
 ============================================================================
 */

#ifndef INPUTDATAVIEWCONTAINER_H
#define INPUTDATAVIEWCONTAINER_H

// INCLUDES
#include <coecntrl.h>

#include <aknform.h> 
#include <eikedwin.h> 
#include <e32cmn.h>
   
// FORWARD DECLARATIONS
class CEikLabel;        // for example labels

/**
 *  CInputDataViewContainer
 * 
 */
class CInputDataViewContainer : public CCoeControl,
                                public MCoeControlObserver
{
    public:
    // Constructors and destructor

    /**
     * EPOC default constructor.
     * @param aRect Frame rectangle for container.
     */
    void ConstructL( const TRect& aRect );

    /**
     * Destructor.
     */ 
    ~CInputDataViewContainer();
    
    private: // Functions from base classes

           /**
            * From CoeControl,SizeChanged.
            */
            void SizeChanged();

           /**
            * From CoeControl,CountComponentControls.
            */
            TInt CountComponentControls() const;

           /**
            * From CCoeControl,ComponentControl.
            */
            CCoeControl* ComponentControl(TInt aIndex) const;

            /**
             *  Initialize each control upon creation.
             */
            void InitializeControlsL();
            
            /**
             * Layout components
             */
            void LayoutControlsL();
            
           /**
            * From CCoeControl,Draw.
            */
            void Draw(const TRect& aRect) const;

           /**
            * From CCoeControl, HandleControlEventL.
            */
            // event handling section
            // e.g Listbox events
            void HandleControlEventL(CCoeControl* aControl,TCoeEvent aEventType);
            
    private: //data
          
          CEikLabel* iLabel;          // example label
      }; 

#endif // INPUTDATAVIEWCONTAINER_H
